1
Standarisasi Konkurensi dalam C++ Modern
AI013Lesson 7
00:00

Sebelum C++11, standar C++ adalah "tidak bergantung pada thread," mengandalkan API khusus platform seperti Thread POSIX (Pthreads) atau Win32. C++ modern merevolusi bahasa ini dengan memperkenalkan model memori formal Model Memori dan API konkurensi yang distandarisasi.

1. Perubahan Besar dalam C++11

C++11 mengubah bahasa ini dari mesin abstrak berbasis satu thread menjadi mesin yang secara native memahami eksekusi konkuren melalui <thread> header dan std::thread. Ini memindahkan pemrosesan multi-thread dari masalah pustaka eksternal ke dalam sistem tipe inti.

SEBELUM-C++11 (Terpecah)PthreadsAPI Win32C++ MODERN (Standar)<thread> <mutex><atomic> <future>

2. Jaminan Pengecualian

Spesifier noexcept adalah sangat penting dalam konteks konkuren. Ia memberikan kontrak bahwa suatu fungsi (seperti titik masuk thread) tidak akan menyebarkan pengecualian. Jika pengecualian lolos dari batas noexcept batas, std::terminate() dipanggil segera, mencegah kerusakan keadaan yang tidak terdefinisi.

3. Tipe Data Konsisten

Standarisasi mencakup tipe-tipe seperti long long int (diadopsi dari C99) dan std::filesystem, memastikan lebar data dan interaksi sistem tetap konsisten di seluruh perangkat saat dibagikan antar thread.

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>